home *** CD-ROM | disk | FTP | other *** search
/ Kellogg's Amérique / Kellogg's Amérique / main.swf / scripts / Session.as < prev    next >
Text File  |  2020-08-04  |  5KB  |  177 lines

  1. package
  2. {
  3.    import flash.net.SharedObject;
  4.    
  5.    public class Session
  6.    {
  7.        
  8.       
  9.       public var NB_SESSIONS_MAX:Number = 5;
  10.       
  11.       const NB_JEUX_MAX:Number = 9;
  12.       
  13.       public var IDENTIFIANT_NB_CARACTERES_MAX:int = 8;
  14.       
  15.       const ID:String = "Kelloggs_Ushuaia";
  16.       
  17.       private var cd:String;
  18.       
  19.       private var so:SharedObject;
  20.       
  21.       private var session_courante:Number;
  22.       
  23.       public function Session(param1:String)
  24.       {
  25.          NB_SESSIONS_MAX = 5;
  26.          IDENTIFIANT_NB_CARACTERES_MAX = 8;
  27.          super();
  28.          cd = param1;
  29.          so = SharedObject.getLocal(ID);
  30.          if(so.data.session == undefined)
  31.          {
  32.             so.data.session = new Array();
  33.          }
  34.       }
  35.       
  36.       public function creer(param1:String, param2:String) : String
  37.       {
  38.          var _loc3_:Number = NaN;
  39.          _loc3_ = 1;
  40.          while(_loc3_ <= NB_SESSIONS_MAX)
  41.          {
  42.             if(so.data.session[_loc3_] != undefined)
  43.             {
  44.                if(so.data.session[_loc3_].nom == param1)
  45.                {
  46.                   return "Ce pseudo est d∩┐╜j∩┐╜ utilis∩┐╜";
  47.                }
  48.             }
  49.             _loc3_++;
  50.          }
  51.          _loc3_ = 1;
  52.          while(_loc3_ <= NB_SESSIONS_MAX)
  53.          {
  54.             if(so.data.session[_loc3_] == undefined)
  55.             {
  56.                so.data.session[_loc3_] = {
  57.                   "nom":param1,
  58.                   "mdp":param2,
  59.                   "cd":new Array()
  60.                };
  61.                MAJ();
  62.                selectionner(_loc3_,param2);
  63.                return "";
  64.             }
  65.             _loc3_++;
  66.          }
  67.          return "Les " + NB_SESSIONS_MAX + " comptes sont d∩┐╜j∩┐╜ utili∩┐╜s.";
  68.       }
  69.       
  70.       public function afficher_liste() : Array
  71.       {
  72.          var _loc1_:Array = null;
  73.          var _loc2_:Number = NaN;
  74.          _loc1_ = new Array();
  75.          _loc2_ = 1;
  76.          while(_loc2_ <= NB_SESSIONS_MAX)
  77.          {
  78.             if(so.data.session[_loc2_] != undefined)
  79.             {
  80.                _loc1_.push(so.data.session[_loc2_].nom);
  81.             }
  82.             _loc2_++;
  83.          }
  84.          return _loc1_;
  85.       }
  86.       
  87.       public function jeu_actif(param1:Number) : Boolean
  88.       {
  89.          if(param1 == 1 || nom == "cheat")
  90.          {
  91.             return true;
  92.          }
  93.          return afficher_score_detail(session_courante,param1 - 1) > -1;
  94.       }
  95.       
  96.       public function get nom() : String
  97.       {
  98.          return so.data.session[session_courante].nom;
  99.       }
  100.       
  101.       public function afficher_score_detail(param1:Number, param2:Number) : Number
  102.       {
  103.          if(so.data.session[param1].cd == undefined)
  104.          {
  105.             return -1;
  106.          }
  107.          if(so.data.session[param1].cd[cd] == undefined)
  108.          {
  109.             return -1;
  110.          }
  111.          if(so.data.session[param1].cd[cd][param2] == undefined)
  112.          {
  113.             return -1;
  114.          }
  115.          return so.data.session[param1].cd[cd][param2];
  116.       }
  117.       
  118.       public function afficher_score(param1:Number) : Number
  119.       {
  120.          return afficher_score_detail(session_courante,param1);
  121.       }
  122.       
  123.       public function selectionner(param1:Number, param2:String) : Boolean
  124.       {
  125.          session_courante = param1;
  126.          so.data.dernierSession = param1;
  127.          return true;
  128.       }
  129.       
  130.       public function reset() : void
  131.       {
  132.          so.clear();
  133.       }
  134.       
  135.       public function supprimer(param1:String) : void
  136.       {
  137.          var _loc2_:Number = NaN;
  138.          _loc2_ = 1;
  139.          while(_loc2_ <= NB_SESSIONS_MAX)
  140.          {
  141.             if(so.data.session[_loc2_] != undefined)
  142.             {
  143.                if(so.data.session[_loc2_].nom == param1)
  144.                {
  145.                   so.data.session[_loc2_] = undefined;
  146.                   MAJ();
  147.                   break;
  148.                }
  149.             }
  150.             _loc2_++;
  151.          }
  152.       }
  153.       
  154.       public function enregistrer_score(param1:Number, param2:Number) : void
  155.       {
  156.          trace("Session.as enregistrer_score " + param1 + " = " + param2);
  157.          if(param2 > afficher_score(param1))
  158.          {
  159.             trace("enregistrer_score");
  160.             trace(so.data.session[session_courante]);
  161.             trace(so.data.session[session_courante].cd[cd]);
  162.             if(so.data.session[session_courante].cd[cd] == undefined)
  163.             {
  164.                so.data.session[session_courante].cd[cd] = new Array();
  165.             }
  166.             so.data.session[session_courante].cd[cd][param1] = param2;
  167.             MAJ();
  168.          }
  169.       }
  170.       
  171.       private function MAJ() : void
  172.       {
  173.          so.flush();
  174.       }
  175.    }
  176. }
  177.